home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 090 / cmln0585.arc / BENMRK.BAS next >
BASIC Source File  |  1986-02-27  |  3KB  |  121 lines

  1. 1000 REM SIEVE PROGRAM
  2. 1010 DIM FLAG%(8190)
  3. 1020 SIZE% = 8190
  4. 1030 INPUT "PRESS <CR> TO START";A$
  5. 1040 FOR ITER% = 1 TO 10
  6. 1050    COUNT% = 0
  7. 1060    FOR I% = 0 TO SIZE% : FLAG%(I%) = 1 : NEXT I%
  8. 1070    FOR I% = 0 TO SIZE%
  9. 1080        IF FLAG%(I%) = 0 THEN 1180
  10. 1090            PRIME% = I% + I% + 3
  11. 1100            K% = I% + PRIME%
  12. 1105            REM SIMULATE A WHILE LOOP
  13. 1110            IF K% > SIZE% THEN 1150
  14. 1120                FLAG%(K%) = 0
  15. 1130                K% = K% + PRIME%
  16. 1140            GOTO 1110
  17. 1150            COUNT% = COUNT% + 1
  18. 1180    NEXT I%
  19. 1190 NEXT ITER%
  20. 1200 PRINT COUNT%;" PRIMES"
  21. 1210 END
  22.  
  23.  
  24.  
  25. 1000 REM PROGRAM MYSORT
  26. 1010 DIM A%(1000)
  27. 1020 MAX% = 1000
  28. 1030 PRINT "INITIALIZING"
  29. 1040 FOR I% = 1 TO MAX% : A%(I%) = I% : NEXT I%
  30. 1050 INPUT "PRESS <CR> TO BEGIN SORTING";A$
  31. 1060 JUMP% = MAX%
  32. 1070 IF JUMP% <= 1 THEN 1190
  33. 1080    JUMP% = JUMP% / 2
  34. 1090    DONE% = 1
  35. 1110        FOR J% = 1 TO (MAX% - JUMP%)
  36. 1120            I% = J% + JUMP%
  37. 1130            IF A%(I%) < A%(J%) THEN 1160
  38. 1140                DONE% = 0
  39. 1150                TEMPO% = A%(I%) : A%(I%) = A%(J%) : A%(J%) = TEMPO%
  40. 1160        NEXT J%
  41. 1170    IF DONE% = 0 THEN 1090
  42. 1180 GOTO 1070
  43. 1190 PRINT "FINISHED SORTING!"
  44. 1200 END
  45.  
  46.  
  47. 1000 REM MATRIX MULTIPLICATION TEST
  48. 1005 DEFDBL A-Z
  49. 1010 DIM A(20,20),B(20,20),C(20,20)
  50. 1020 N% = 20
  51. 1030 SUM = 0
  52. 1032 INPUT "PRESS <CR> TO START";A$
  53. 1040 GOSUB 10000 : PRINT "A FILLED"
  54. 1050 GOSUB 20000 : PRINT "B FILLED"
  55. 1060 GOSUB 30000 : PRINT "C FILLED"
  56. 1070 FOR I% = 1 TO N%
  57. 1080    FOR J% = 1 TO N%
  58. 1090        FOR K% = 1 TO N%
  59. 1100            C(I%,J%) = C(I%,J%) + A(I%,K%) * B(K%,J%)
  60. 1110        NEXT K%
  61. 1120    NEXT J%
  62. 1130 NEXT I%
  63. 1135 PRINT "MULTIPLIED"
  64. 1140 REM SUM UP C(I,J)
  65. 1150     FOR I% = 1 TO N%
  66. 1160        FOR J% = 1 TO N%
  67. 1170            SUM = SUM + C(I%,J%)
  68. 1180        NEXT J%
  69. 1190 NEXT I%
  70. 1210 END
  71. 10000 REM SUBROUTINE TO FILL MATRIX A
  72. 10010 FOR I% = 1 TO N%
  73. 10020    FOR J% = 1 TO N%
  74. 10030        A(I%,J%) = I% + J% + 2
  75. 10040    NEXT J%
  76. 10050 NEXT I%
  77. 10060 RETURN
  78. 20000 REM SUBROUTINE TO FILL MATRIX B
  79. 20010 FOR I% = 1 TO N%
  80. 20020    FOR J% = 1 TO N%
  81. 20030        B(I%,J%) = (I% + J% + 2) /(J% +1)
  82. 20040    NEXT J%
  83. 20050 NEXT I%
  84. 20060 RETURN
  85. 30000 REM SUBROUTINE TO FILL MATRIX C
  86. 30010 FOR I% = 1 TO N%
  87. 30020    FOR J% = 1 TO N%
  88. 30030        C(I%,J%) = 0
  89. 30040    NEXT J%
  90. 30050 NEXT I%
  91. 30060 RETURN
  92.  
  93.  
  94. 1000 REM PROGRAM FOR TRIG SIN() AND COS() TEST
  95. 1010 PI = 355 / 113
  96. 1020 PRINT "START SINE TEST"
  97. 1030 INPUT "PRESS <CR> TO START";A$ 
  98. 1040 FOR I% = 1 TO 10
  99. 1050    PRINT ".";
  100. 1060    A = 0
  101. 1070    IF A > 2 * PI THEN 1110 
  102. 1080        X = SIN(A)
  103. 1090        A = A + PI / 360
  104. 1100    GOTO 1070
  105. 1110 NEXT I%
  106. 1120 PRINT "END OF SINE TEST"
  107. 1130 PRINT : PRINT 
  108. 1140 PRINT "START COSINE TEST"
  109. 1150 INPUT "PRESS <CR> TO START";A$
  110. 1160 FOR I% = 1 TO 10
  111. 1170    PRINT ".";
  112. 1180    A = 0
  113. 1190    IF A > 2 * PI THEN 1230 
  114. 1200        X = COS(A)
  115. 1210        A = A + PI / 360
  116. 1220    GOTO 1190
  117. 1230 NEXT I%
  118. 1240 PRINT "END OF COSINE TEST"
  119. 1250 PRINT : PRINT 
  120. 1260 END
  121.